﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BlogsAPI.Sites
{
    /// <summary>
    /// Информация о текущем видео
    /// </summary>
    public class PeriscopeBroadcast
    {
        /// <summary>
        /// номер трансляции
        /// </summary>
        [JsonMapping("id", JsonMapping.MappingType.Primitive)]
        public string Id { get; set; }

        /// <summary>
        /// язык 
        /// </summary>
        [JsonMapping("language", JsonMapping.MappingType.Primitive)]
        public string Language { get; set; }

        /// <summary>
        /// город 
        /// </summary>
        [JsonMapping("city", JsonMapping.MappingType.Primitive)]
        public string City { get; set; }

        /// <summary>
        /// ник 
        /// </summary>
        [JsonMapping("country", JsonMapping.MappingType.Primitive)]
        public string Country { get; set; }

        /// <summary>
        /// status 
        /// </summary>
        [JsonMapping("status", JsonMapping.MappingType.Primitive)]
        public string Status { get; set; }

        /// <summary>
        /// время создания 
        /// </summary>
        [JsonMapping("start", JsonMapping.MappingType.Primitive)]
        public DateTimeOffset Started { get; set; }


        /// <summary>
        /// время последнего пинга или концовка
        /// </summary>
        [JsonMapping("ping", JsonMapping.MappingType.Primitive)]
        public DateTimeOffset Ended { get; set; }

        /// <summary>
        /// язык 
        /// </summary>
        [JsonMapping("ip_lat", JsonMapping.MappingType.Primitive)]
        public double Latitude { get; set; }

        /// <summary>
        /// язык 
        /// </summary>
        [JsonMapping("ip_lng", JsonMapping.MappingType.Primitive)]
        public double Longitude { get; set; }

        /// <summary>
        /// картинка 
        /// </summary>
        [JsonMapping("image_url", JsonMapping.MappingType.Primitive)]
        public string ImageUrl { get; set; }

        /// <summary>
        /// картинка 
        /// </summary>
        [JsonMapping("image_url_small", JsonMapping.MappingType.Primitive)]
        public string ImageUrlSmall { get; set; }

        /// <summary>
        /// Можно ли проиграть видео в записи
        /// </summary>
        [JsonMapping("available_for_replay", JsonMapping.MappingType.Primitive)]
        public bool HasReplay { get; set; }

        /// <summary>
        /// Список тэгов
        /// </summary>
        [JsonMapping("tags", JsonMapping.MappingType.Collection)]
        public List<string> Tags { get; set; }

        /// <summary>
        /// Помечено ли?
        /// </summary>
        [JsonMapping("featured", JsonMapping.MappingType.Primitive)]
        public bool Featured { get; set; }

        /// <summary>
        /// Причина пометки
        /// </summary>
        [JsonMapping("featured_reason", JsonMapping.MappingType.Primitive)]
        public string FeaturedReason { get; set; }

        /// <summary>
        /// Категория пометки
        /// </summary>
        [JsonMapping("featured_category", JsonMapping.MappingType.Primitive)]
        public string FeaturedCategory { get; set; }

        /// <summary>
        /// Программа
        /// </summary>
        [JsonMapping("broadcast_source", JsonMapping.MappingType.Primitive)]
        public string BroadcastSource { get; set; }
    }
}
